package com.usac.arqui1.grupo2.proyecto1;

import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.text.TextUtils.TruncateAt;
import android.util.Log;
import android.view.View;
import android.webkit.WebView;
import android.widget.Spinner;
import android.widget.TextView;

public class VistaPrevia extends Activity {

	public Spinner spcolorletra;
	public Spinner spcolorfondo;
	public Spinner spefectos;

	public Bundle parametros;
	private int colortexto, colorfondo, efecto;
	private int txttamano, txttipo;

	private TextView campo_texto;
	private String htmlcolorletra = "", htmlcolorfondo = "",
			htmldireccion = "", htmltamano = "", htmltipo = "";
	private String txttexto, strparpadeo;
	
	private Boolean htmlparpadeo;
	

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_vista_previa);

		// campo_texto = (TextView) findViewById(R.id.textocolores);

		parametros = this.getIntent().getExtras();
		colortexto = parametros.getInt("colorletra");
		colorfondo = parametros.getInt("colorfondo");
		efecto = parametros.getInt("efectos");
		txttamano = parametros.getInt("tamano");
		txttipo = parametros.getInt("tipo");
		txttexto = parametros.getString("texto");
		htmlparpadeo = parametros.getBoolean("colorparpadeo");
		
		Log.d("COLORTEXTO", colortexto + "<-");
		Log.d("COLORFONDO", colorfondo + "<-");
		Log.d("EFECTOS", efecto + "<-");
		validarColores();

		htmltamano = Integer.toString((txttamano + 1) * 10);

		WebView marquee = (WebView) findViewById(R.id.webview);


		String htmlText = "";
		if (htmlcolorletra.isEmpty() || htmlcolorfondo.isEmpty()) {
			htmlText = "<html><body>Colores no compatibles. Intente cambiar los colores de texto o fondo</body></html>";
		} else {
			if(htmlparpadeo){
				strparpadeo="";
			}
			
			if (!htmldireccion.isEmpty()) {
				htmlText = "<html><body bgcolor=\"" + htmlcolorfondo + "\">"
						+ "<font color=\"" + htmlcolorletra + "\"" + "size =\""
						+ htmltamano + "\"" + ">" + "<marquee id=\"mrqSlogan\""
						+ " direction=\"" + htmldireccion
						+ "\" style=\"width: auto;\" >" + txttexto
						+ "</marquee>" + "</font>" + "</body></html>";
			} else {
				htmlText = "<html><body bgcolor=\"" + htmlcolorfondo + "\">"
						+ "<font color=\"" + htmlcolorletra + "\"" + "size =\""
						+ htmltamano + "\"" + ">" + txttexto + "</font>"
						+ "</body></html>";
			}
		}
		

		marquee.loadDataWithBaseURL(null, htmlText, "text/html", null, null);

	}


	
	private void validarColores() {
		if (colorfondo >= 0 && colorfondo <= 3) {
			if (colortexto >= 0 && colortexto <= 3) {
				// campo_texto.setText("ERROR: SELECCION DE COLORES INVALIDOS");

			} else {
				asignaColores();
				asignarEfectos();
			}
		} else if (colorfondo >= 4 && colorfondo <= 7) {
			if (colortexto >= 4 && colortexto <= 7) {
				// campo_texto.setText("ERROR: SELECCION DE COLORES INVALIDOS");
			} else {
				asignaColores();
				asignarEfectos();
			}
		}
	}

	private void asignaColores() {
		int colorestexto = 0;
		int coloresfondo = 0;
		// Amarillo = 0
		if (colortexto == 0) {
			colorestexto = Color.YELLOW;
			htmlcolorletra = "#F4F40E";
		}
		// Celeste = 1
		else if (colortexto == 1) {
			colorestexto = Color.parseColor("#0096fd");
			htmlcolorletra = "#0096fd";
		}
		// Rosado = 2
		else if (colortexto == 2) {
			colorestexto = Color.parseColor("#FF6EC7");
			htmlcolorletra = "#FF6EC7";
		}
		// Blanco = 3
		else if (colortexto == 3) {
			colorestexto = Color.WHITE;
			htmlcolorletra = "#FFFFFF";
		}
		// Azul = 4
		else if (colortexto == 4) {
			colorestexto = Color.BLUE;
			htmlcolorletra = "#1326F7";
		}
		// Morado = 5
		else if (colortexto == 5) {
			colorestexto = Color.parseColor("#660198");
			htmlcolorletra = "#660198";
		}
		// Verde = 6
		else if (colortexto == 6) {
			colorestexto = Color.GREEN;
			htmlcolorletra = "#178C2A";
		}
		// Naranja = 7
		else if (colortexto == 7) {
			colorestexto = Color.parseColor("#ed20ba");
			htmlcolorletra = "#ed20ba";
		}

		// -- Colores Fondo
		// Amarillo = 0
		if (colorfondo == 0) {
			coloresfondo = Color.YELLOW;
			htmlcolorfondo = "#F4F40E";
		}
		// Celeste = 1
		else if (colorfondo == 1) {
			coloresfondo = Color.parseColor("#0096fd");
			htmlcolorfondo = "#0096fd";
		}
		// Rosado = 2
		else if (colorfondo == 2) {
			coloresfondo = Color.parseColor("#FF6EC7");
			htmlcolorfondo = "#FF6EC7";
		}
		// Blanco = 3
		else if (colorfondo == 3) {
			coloresfondo = Color.WHITE;
			htmlcolorfondo = "#FFFFFF";
		}
		// Azul = 4
		else if (colorfondo == 4) {
			coloresfondo = Color.BLUE;
			htmlcolorfondo = "#1326F7";
		}
		// Morado = 5
		else if (colorfondo == 5) {
			coloresfondo = Color.parseColor("#660198");
			htmlcolorfondo = "#660198";
		}
		// Verde = 6
		else if (colorfondo == 6) {
			coloresfondo = Color.GREEN;
			htmlcolorfondo = "#178C2A";
		}
		// Naranja = 7
		else if (colorfondo == 7) {
			coloresfondo = Color.parseColor("#ed20ba");
			htmlcolorfondo = "#ed20ba";
		}

		getWindow().getDecorView().setBackgroundColor(coloresfondo);
	}   

	//VISTA PREVIA PRUEBA
	private void asignarEfectos() {
		if (efecto == 0) {
			htmldireccion = "";
		} else if (efecto == 1) {
			htmldireccion = "LEFT";
		} else if (efecto == 2) {
			htmldireccion = "RIGHT";
		} else if (efecto == 3) {
			htmldireccion = "DOWN";
		} else if (efecto == 4) {
			htmldireccion = "UP";
		}
	}
	
	
}
